package com.liu.dw.config;

import com.auth0.jwt.JWT;
import com.auth0.jwt.algorithms.Algorithm;
import com.liu.dw.vo.User;
import org.springframework.stereotype.Service;

/**
 * @version 1.0
 * @author： LiuWeiGang
 */

@Service("TokenService")
public class TokenConfig {

    // 过期时间
    public static long EXPIRE_TIME = 3000;
    // 签名秘钥
    private static final String SECRET = "xxxx";


    public String getToken(User user) {
        String token= "";

        token= JWT.create().withAudience(user.getId())// 将 user id 保存到 token 里面
                .sign(Algorithm.HMAC256(user.getPassword()));// 以 password 作为 token 的密钥

//        getToken（）这个方法可以自定义jwt参数
//        例如下面的配置 withExpiresAt这个属性就是过期时间6000毫秒


//        token= JWT.create().withAudience(user.getId())
//                .withExpiresAt(new Date(System.currentTimeMillis()+6000))
//                .sign(Algorithm.HMAC256(user.getPassword()));

        //解密密码：
        //JWTVerifier jwtVerifier = JWT.require(Algorithm.HMAC256(user.getPassword())).build();

        return token;
    }
}
